package com.nsgf.library.data.bean;

import androidx.databinding.BaseObservable;
import androidx.databinding.Bindable;

import com.nsgf.library.BR;

import java.util.List;

/**
 * 通知公告详情数据模型
 */
public class AnnouncementDetailBean extends BaseObservable {

    private int id;
    private String announcementTopic;
    private String description;
    private String image;
    private List<FileItem> imageList;
    private String video;
    private List<FileItem> videoList;
    private String file;
    private List<FileItem> fileList;
    private int isDelete;

    @Bindable
    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
        notifyPropertyChanged(BR.id);
    }

    @Bindable
    public String getAnnouncementTopic() {
        return announcementTopic;
    }

    public void setAnnouncementTopic(String announcementTopic) {
        this.announcementTopic = announcementTopic;
        notifyPropertyChanged(BR.announcementTopic);
    }

    @Bindable
    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
        notifyPropertyChanged(BR.description);
    }

    @Bindable
    public String getImage() {
        return image;
    }

    public void setImage(String image) {
        this.image = image;
        notifyPropertyChanged(BR.image);
    }

    @Bindable
    public List<FileItem> getImageList() {
        return imageList;
    }

    public void setImageList(List<FileItem> imageList) {
        this.imageList = imageList;
        notifyPropertyChanged(BR.imageList);
    }

    @Bindable
    public String getVideo() {
        return video;
    }

    public void setVideo(String video) {
        this.video = video;
        notifyPropertyChanged(BR.video);
    }

    @Bindable
    public List<FileItem> getVideoList() {
        return videoList;
    }

    public void setVideoList(List<FileItem> videoList) {
        this.videoList = videoList;
        notifyPropertyChanged(BR.videoList);
    }

    @Bindable
    public String getFile() {
        return file;
    }

    public void setFile(String file) {
        this.file = file;
        notifyPropertyChanged(BR.file);
    }

    @Bindable
    public List<FileItem> getFileList() {
        return fileList;
    }

    public void setFileList(List<FileItem> fileList) {
        this.fileList = fileList;
        notifyPropertyChanged(BR.fileList);
    }

    @Bindable
    public int getIsDelete() {
        return isDelete;
    }

    public void setIsDelete(int isDelete) {
        this.isDelete = isDelete;
        notifyPropertyChanged(BR.isDelete);
    }

    /**
     * 文件项
     */
    public static class FileItem extends BaseObservable {
        private int id;
        private String filePath;
        private String fileSize;
        private String fileName;
        private String createTime;
        private int createBy;
        private int isDelete;

        @Bindable
        public int getId() {
            return id;
        }

        public void setId(int id) {
            this.id = id;
            notifyPropertyChanged(BR.id);
        }

        @Bindable
        public String getFilePath() {
            return filePath;
        }

        public void setFilePath(String filePath) {
            this.filePath = filePath;
            notifyPropertyChanged(BR.filePath);
        }

        @Bindable
        public String getFileSize() {
            return fileSize;
        }

        public void setFileSize(String fileSize) {
            this.fileSize = fileSize;
            notifyPropertyChanged(BR.fileSize);
        }

        @Bindable
        public String getFileName() {
            return fileName;
        }

        public void setFileName(String fileName) {
            this.fileName = fileName;
            notifyPropertyChanged(BR.fileName);
        }

        @Bindable
        public String getCreateTime() {
            return createTime;
        }

        public void setCreateTime(String createTime) {
            this.createTime = createTime;
            notifyPropertyChanged(BR.createTime);
        }

        @Bindable
        public int getCreateBy() {
            return createBy;
        }

        public void setCreateBy(int createBy) {
            this.createBy = createBy;
            notifyPropertyChanged(BR.createBy);
        }

        @Bindable
        public int getIsDelete() {
            return isDelete;
        }

        public void setIsDelete(int isDelete) {
            this.isDelete = isDelete;
            notifyPropertyChanged(BR.isDelete);
        }
    }
}






